package gui;

import gestionBDD.GestionBDD;
import interne.Client;

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;

/**
 * Formulaire d'inscription.
 * Création d'un nouveau client.
 */
public class ItfInscription {
	/**
	 * Menu d'inscription d'un nouveau client.
	 */
	void menu() {
		final Display display = new Display();
		final Shell shell = new Shell(display);
		//GridLayout layout = new GridLayout();
		//layout.wrap = true;
		FillLayout layout = new FillLayout(SWT.VERTICAL);
		shell.setLayout(layout);
		shell.setLayout(layout);
		
		Label lb_mail = new Label(shell, SWT.LEFT);
		lb_mail.setText("Mail");
		final Text ch_mail = new Text(shell, SWT.BORDER);	
		
		Label lb_mdp = new Label(shell, SWT.LEFT);
		lb_mdp.setText("Mot de passe");
		final Text ch_mdp = new Text(shell, SWT.BORDER);
		// champ_mdp.setEchoChar('*'); <- Pour les * du mdp
		
		Label lb_nom = new Label(shell, SWT.LEFT);
		lb_nom.setText("nom");
		final Text ch_nom = new Text(shell, SWT.BORDER);	
		
		Label lb_prenom = new Label(shell, SWT.LEFT);
		lb_prenom.setText("prenom");
		final Text ch_prenom = new Text(shell, SWT.BORDER);	
		
		Label lb_adresse = new Label(shell, SWT.LEFT);
		lb_adresse.setText("adresse");
		final Text ch_adresse = new Text(shell, SWT.BORDER);	
		
		Button bt_valider = new Button(shell, SWT.PUSH);
		bt_valider.setText("Valider");
		
		/*
		 * à modifier pour prendre en compte l'inscription. 
		 */
		bt_valider.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(SelectionEvent event) {
				Client client = new Client(
						ch_mail.getText(),
						ch_mdp.getText(),
						ch_nom.getText(),
						ch_prenom.getText(),
						ch_adresse.getText());

				/* Ajout du client à la BDD */
				GestionBDD.ajouter(client);

				/* TODO : message de réussite/erreur ou connexion immediate */
				display.dispose();
				(new ItfVisiteur()).menu();
			}
		});
		
		shell.pack();
		shell.open();
		
		while(!shell.isDisposed()) {
			if(!display.readAndDispatch()) {
				display.sleep();
			}
		}
		display.dispose();
		
	}
}
